package com.nulldev.util.encoding.nHash;

public interface Hashable<T> {
	/**
	 * Hashes the byte array given into T. <br>
	 * Hash2 will return a 2 length integer. <br>
	 * Hash32 will return a long. <br> 
	 * jdk.crc32 will return a hex string. <br>
	 * @param data [Data to hash]
	 * @returns T [May be int or a hash or even String]
	 */
	public T hash(final byte[] data);
	
	public String hasherID();
	
	public String[] hashes();
}
